A disk drive is a data storage device that stores digital data in tracks on the surface of a data storage disk. Data is read from or written to a track of the disk using a transducer, which includes a read element and a write element, that is held close to the track while the disk spins about its center at a substantially constant angular velocity. To properly locate the transducer near the desired track during a read or write operation, a closed-loop servo system is generally implemented. The servo system uses servo data read from the disk surface to align the transducer with the desired track. The servo data is generally written to the disk using a servo track writer (STW). However, there has been a movement towards having the disk drive self-servo write some portion or, in some cases, all of the servo data.
In an ideal disk drive, the tracks of the disk are non-perturbed circles situated about the center of the disk. As such, each of these ideal tracks includes a track centerline that is located at a known constant radius from the disk center. In an actual system, however, it is difficult to write non-perturbed circular tracks to the disk. That is, due to certain problems (e.g., vibration, bearing defects, inaccuracies in the STW and disk clamp slippage), tracks are generally written differently from the ideal non-perturbed circular track shape. Positioning errors created by the perturbed nature of these tracks are known as written-in repeatable runout (WRRO).
The perturbed shape of these tracks complicates the transducer positioning function during read and write operations because the servo system needs to continuously reposition the transducer during track following to keep up with the constantly changing radius of the track centerline with respect to the center of the spinning disk. Furthermore, the perturbed shape of these tracks can result in problems such as track squeeze and track misregistration errors during read and write operations.
In order to reduce such problems, disk drive manufacturers have developed techniques to measure the WRRO so that compensation values (also known as embedded runout correction values or ERC values) may be generated and used to position the transducer along an ideal track centerline. Examples of such techniques may be found in U.S. Pat. No. 4,412,165 to Case et al. entitled “Sampled Servo Position Control System,” U.S. Pat. No. 6,115,203 to Ho et al. entitled “Efficient Drive-Level Estimation of Written-In Servo Position Error,” and U.S. Pat. No. 6,549,362 to Melrose et al. entitled “Method and Apparatus for the Enhancement of Embedded Runout Correction in a Disk Drive,” all of which are incorporated herein by reference.
In general, correcting poorly-written tracks takes place in a self-test procedure at the factory (i.e., during the manufacturing process); that is, before the disk drive is delivered to an end user. Each disk drive is required to complete its self-test procedure within a predetermined period of time. If a disk drive does not complete its self-test procedure within the predetermined period of time, it fails the self-test procedure and is discarded.
As is understood by those skilled in the art, the process of determining ERC values during the manufacturing process is somewhat time consuming. While it would be beneficial to develop ERC values for each and every sector of each and every track of a disk drive during the manufacturing process, this is rarely done because the disk drive would likely fail its self-test procedure. Furthermore, manufacturing times would become excessive if ERC values were developed in such a manner.
Accordingly, disk drive manufacturers have developed techniques that are used in the manufacturing process, which attempt to correct only the most poorly-written tracks of a disk drive, instead of all of the tracks of each disk drive. In such techniques, an ERC threshold is used in determining which tracks are to be corrected.
More specifically, in one technique, a position error signal (PES) due to repeatable runout (PES RRO) is measured by track following and averaging the position error from the servo bursts in each servo sector associated with the track for multiple revolutions (e.g., 25 revolutions) of the disk. As will be understood by those skilled in the art, the position error is averaged for multiple revolutions of the disk in an attempt to average-out the affects of non-repeatable runout (NRRO).
If the absolute value of the average PES RRO for any servo sector in the track exceeds the ERC threshold, the track is corrected. That is, ERC values are determined for all of the servo sectors of that track. However, if the absolute value of the average PES RRO for each of the servo sectors in the track is less than the ERC threshold, the track is not corrected.
U.S. patent application Ser. No. 10/029,528 filed Dec. 20, 2001 describes a method and apparatus for automatically determining ERC thresholds on a drive-by-drive basis in order to make efficient use of the self-test time available to correct tracks. Such application is incorporated herein by reference in its entirety.
Since attempts are made to correct only the most poorly written tracks in a disk drive, many other poorly written tracks may still be included in a disk drive when it reaches an end user. Furthermore, a disk drive's parameters (e.g., flying height, head linearity, magnetic image, burst sizes, etc.) may change, which may require adjustment of the ERC values after a disk drive has left the factory and is in the possession of an end user. Accordingly, it would be desirable to correct the tracks after the disk drive has left the factory and been provided to an end user.
Prior techniques for correcting poorly-written tracks by generating ERC values have been open-loop techniques. One example of a prior open-loop technique is illustrated in FIG. 1, where the ERC values are determined using a batch process. That is, a PES associated with each servo sector of a track is collected over many revolutions of the disk and then averaged to obtain the PES RRO. The PES RRO is then circularly convolved with the inverse impulse response of the system to obtain the WRRO. The ERC values for the track are based on the WRRO. Importantly, the ERC values are generated once.
With reference to FIG. 1, in step 10, when following a track, the PES is measured and summed for each of the servo bursts associated with the track for N revolutions of the disk. Next, in step 15, the PES RRO is determined by dividing the sums by N to obtain the average PES associated with each of the servo bursts. As will be understood by those skilled in the art, the position error is averaged for N revolutions of the disk in an attempt to average-out the affects of NRRO. However, this is performed in an open-loop manner.
In step 20, the inverse impulse response for the disk drive is obtained. As will be understood by those skilled in the art, the inverse impulse response may be obtained in a variety of ways, including those described in U.S. Pat. Nos. 6,115,203 and 6,549,362. Furthermore, the inverse impulse response may be obtained for each transducer in a disk drive as described in U.S. Pat. No. 6,549,362.
Next, in step 25, the average PES RRO is circularly convolved with the inverse impulse response to obtain the WRRO. Finally, in step 30, the ERC values are determined and written to the disk surface based upon the WRRO.
While the technique of FIG. 1 has its advantages, it, along with other open-loop techniques, has its drawbacks. Specifically, the open-loop system cannot properly compensate for certain errors. For example, the open-loop system of FIG. 1 cannot properly compensate for PES non-linearities (e.g., due to read asymmetry and other non-linear error sources), errors in modeling the inverse impulse response (e.g., gain error), and errors introduced into the system by NRRO (e.g., noise when writing the ERC values).
Accordingly, it would be desirable to provide a method and apparatus for determining ERC values that overcomes the deficiencies of open-loop systems.